package chd.edu.spzx.manager.service;

import chd.edu.spzx.model.dto.system.SysRoleDto;
import chd.edu.spzx.model.entity.system.SysRole;
import com.github.pagehelper.PageInfo;

import java.util.Map;
import java.util.Objects;

/**
 * @author Zhang Chaoliang
 * create 2023
 */
public interface SysRoleService {

    /**
     * 角色的列表方法
     * @param sysRoleDto 条件角色名称
     * @param current 当前页
     * @param limit 每页显示的记录数
     * @return
     */
    PageInfo<SysRole> findByPage(SysRoleDto sysRoleDto, Integer current, Integer limit);

    /**
     * 角色添加接口
     * @param sysRole
     * @return
     */
    void saveSysRole(SysRole sysRole);

    /**
     * 角色修改接口
     * @param sysRole
     * @return
     */
    void updateSysRole(SysRole sysRole);

    /**
     * 角色删除接口
     * @param roleId
     * @return
     */
    void deleteById(Long roleId);

    /**
     * 查询所有的角色
     * @return
     */
    Map<String, Object> findAll(Long userId);
}
